#pragma once


class CProfilerSection;

class CProfiler
{
public:
	CProfiler();

	void Update();
	void Render(IRender* pRender);
	void RegisterSection(CProfilerSection* section);

private:
	static bool ProfilerSectionsPredicate(const CProfilerSection* section_1, const CProfilerSection* section_2);

private:
	typedef std::vector<CProfilerSection*> TProfilerSections;
	TProfilerSections m_sections;

	string m_output;
};